#include <stdio.h>

// C语言中的数据类型，和系统一起规定了存储的位数
// 要注意存储位数溢出的问题。
// char 占位一个字符==8个bit
// char 取值范围为-128到127
// unsigned char 0-255
int main()
{
    // 等号左边是一个变量，名字是a
    // 等号右边是一个字符常量，就是字母a
    char a = 'a'; 

    // char 本质是一个整数，大小是一个BYTE
    int i = sizeof(a);
    printf("%d\n", i);

    // char 类型 存储位数溢出,输出就变样了。
    a = 4;
    a = a + 5;
    printf("%d\n", a);
    
    a = 0x7f;
    a += 3;
    printf("%d\n", a);

    unsigned char b = 0xff;
    b = b + 2;
    printf("%u\n", b);

    a = 'b';//把字符b的ASCII赋值给了a
    // a = 98;
    printf("%d\n", a);

    a = 'B';
    // a = 66;
    
    a = 99;
    printf("%c\n", a);// c 的ASCII是99

    a = a + 3;
    printf("%c, %d\n", a, a);
    
    printf("hello world");
    a = '\b'; //等于一个退格的ASCII
    printf("%c%c", a, a);

    printf("\n");
    a = '\t';
    printf("%d,%c",a, a);
    printf("hello\n");
    return 0;
}
